<?php

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */


require_once '../dao/Conexao.php';

/**
 * Description of saidaItemDAO
 *
 * @author Santos
 */
class saidaItemDAO {

    public function setDados(saidaItemModel $model) {
        $conexao = new Conexao();
        if ($this->getAcao($model) == "I") {
            $sql = "INSERT INTO 
                `saida_item`
              (
                `PRODUTO_FK_PK`,
                `DATA_SAIDA_FK_PK`,
                `DOCUMENTO_FK_PK`,
                `QUATIDADE`,
                `PRECO_VENDA`,
                `PRECO_CUSTO`,
                `DESCONTO`) 
              VALUE (
                " . $model->getProdutoModel()->getId() . ",
                '" . $model->getSaidaModel()->getDataSaida() . "',
                " . $model->getSaidaModel()->getId() . ",
                " . $model->getQuantidade() . ",
                " . $model->getPrecoVenda() . ",
                " . $model->getPrecoCusto() . ",
                " . $model->getDesconto() . ")";
        } elseif ($this->getAcao($model) == "U") {
            $sql = "UPDATE 
                `saida_item`  
              SET 
                `QUATIDADE` =  " . $model->getQuantidade() . ",
                `PRECO_VENDA` = " . $model->getPrecoVenda() . ",
                `PRECO_CUSTO` = " . $model->getPrecoCusto() . ",
                `DESCONTO` = " . $model->getDesconto() . "
              WHERE 
                `PRODUTO_FK_PK` = " . $model->getProdutoModel()->getId() . " AND 
                `DATA_SAIDA_FK_PK` = '" . $model->getSaidaModel()->getDataSaida() . "' AND 
                `DOCUMENTO_FK_PK` = " . $model->getSaidaModel()->getId() . "";
        }
        $resultado = mysql_query($sql, $conexao->getConexao()) or die(mysql_error());

        if (!$resultado) {
            die('Erro na manipulação dos dados');
            return false;
        }
        $conexao->desconecta();
        return true;
    }

    public function getAcao(saidaItemModel $model) {
        $conexao = new Conexao();
        $sql = "SELECT * FROM `saida_item` WHERE `DOCUMENTO_FK_PK` = " . $model->getSaidaModel()->getId() . " AND 
                    `DATA_SAIDA_FK_PK` = '" . $model->getSaidaModel()->getDataSaida() . "' AND 
                    `PRODUTO_FK_PK` = " . $model->getProdutoModel()->getId() . "";
        $resultado = mysql_query($sql, $conexao->getConexao()) or die(mysql_error());
        $numeroLinha = mysql_num_rows($resultado);
        if ($numeroLinha == 1) {
            return "U"; //update
        } else {
            return "I"; //insert
        }
        $conexao->desconecta
        ();
    }

    public function deleteDados(saidaItemModel $model) {
        $conexao = new Conexao();
        $sql = " DELETE FROM `saida_item` WHERE `DOCUMENTO_FK_PK` = " . $model->getSaidaModel()->getId() . " AND 
                    `DATA_SAIDA_FK_PK` = '" . $model->getSaidaModel()->getDataSaida() . "'";
        $resultado = mysql_query($sql, $conexao->getConexao()) or die(mysql_error());
        if (!$resultado) {
            die('Erro na exclusão dos dados');
            return false;
        }
        $conexao->desconecta();
        return true;
    }

    public function getDados(saidaItemModel $model) {
        $conexao = new Conexao();
        $sql = "SELECT 
                  `saidaItem`.`PRODUTO_FK_PK`,
                  `produto`.`NOME` PRODUTO_NOME,
                  `saidaItem`.`DATA_SAIDA_FK_PK`,
                  `saidaItem`.`DOCUMENTO_FK_PK`,
                  `saidaItem`.`QUATIDADE`,
                  `saidaItem`.`PRECO_VENDA`,
                  `saidaItem`.`PRECO_CUSTO`,
                  `saidaItem`.`DESCONTO`
                FROM 
                  `saida_item` `saidaItem`
                  inner join `produto` `produto`
                  on `saidaItem`.`PRODUTO_FK_PK` = `produto`.`ID_PK`
                  inner join `saida` `saida`
                  on `saida`.`DOCUMENTO_PK` = `saidaItem`.`DOCUMENTO_FK_PK`
                  and `saida`.`DATA_SAIDA_PK` = `saidaItem`.`DATA_SAIDA_FK_PK` ";
        if ($model->getSaidaModel()->getId() <> "" && $model->getSaidaModel()->getDataSaida() <> "") {
            $sql = $sql . " where `saidaItem`.`DATA_SAIDA_FK_PK` = '" . $model->getSaidaModel()->getDataSaida() . "'          
                            and `saidaItem`.`DOCUMENTO_FK_PK` = " . $model->getSaidaModel()->getId() . "";
        }
        $resultado = mysql_query($sql, $conexao->getConexao()) or die(mysql_error());
        $conexao->desconecta();
        return $resultado;
    }

}
